package com.dragon.english_practice_back.service;

import org.springframework.data.redis.core.RedisTemplate;

import java.util.List;
import java.util.Map;

public interface AsyncRedisUpdateService {
    /**
     更新数个元素的熟练度
     redisTemplate是redis模板对象
     redisListKey是存储在redis中的list的key
     redisLock是redisson的锁的key
     index是list的下标
     mapKey是list中的map的key
     changeScope是改变的程度,比如+1,-1
     **/
    void updateProficiency(RedisTemplate<String, Map<String, Object>> redisTemplate,
                               String redisListKey,
                               String redisLock,
                               List<Integer> index,
                               String mapKey,
                               int changeScope);

    void ClearSchedule(RedisTemplate<String, Map<String, Object>> redisTemplate,
                           String redisListKeyPrefix,
                           String redisLockPrefix);
}
